import { IPSModelObject } from '../ipsmodel-object';
import { IPSSysMsgTempl } from '../msg/ipssys-msg-templ';
import { IPSWFProcessRole } from './ipswfprocess-role';

/**
 *
 * 子接口类型识别属性[]
 * @export
 * @interface IPSWFLinkRole
 */
export interface IPSWFLinkRole extends IPSModelObject {
  /**
   * 通知消息模板
   *
   * @type {IPSSysMsgTempl}
   */
  getPSSysMsgTempl(): IPSSysMsgTempl | null;

  /**
   * 通知消息模板
   *
   * @type {IPSSysMsgTempl}
   */
  get psSysMsgTempl(): IPSSysMsgTempl | null;

  /**
   * 通知消息模板（必须存在）
   *
   * @type {IPSSysMsgTempl}
   */
  getPSSysMsgTemplMust(): IPSSysMsgTempl;

  /**
   * 流程处理角色
   *
   * @type {IPSWFProcessRole}
   */
  getPSWFProcessRole(): IPSWFProcessRole | null;

  /**
   * 流程处理角色
   *
   * @type {IPSWFProcessRole}
   */
  get psWFProcessRole(): IPSWFProcessRole | null;

  /**
   * 流程处理角色（必须存在）
   *
   * @type {IPSWFProcessRole}
   */
  getPSWFProcessRoleMust(): IPSWFProcessRole;
}
